Communication apparatus, control method, and storage medium

ABSTRACT

A communication apparatus has a communication function for performing wireless communication using one of a first mode of performing first communication with a partner apparatus via another apparatus, a second mode of performing second communication with the partner apparatus not via another apparatus, and a third mode of concurrently performing the first communication and the second communication. When the third mode is the operation mode of the communication function, the communication apparatus controls the communication function so as to activate a function of the second communication after executing processing to establish a connection for the first communication. When the connection has not been established even after a predetermined time has elapsed since the start of connection processing for the first communication, the function for the second communication is activated even if the connection for the first communication has not been established.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention generally relates to a communication apparatus,and a control method, particularly to a technique for setting wirelesscommunication.

Description of the Related Art

As a wireless connection mode that is used when a communicationapparatus is to be connected to a partner apparatus, either aninfrastructure mode of wirelessly connecting to the partner apparatusvia another apparatus such as an access point (AP) or a peer-to-peer(P2P) mode of wirelessly connecting to the partner apparatus directlycan be used. Note that the P2P mode includes a mode in which thecommunication apparatus or the partner apparatus operates as a basestation such as an access point and performs wireless connection byhandling the other apparatus as a terminal accommodated by the basestation.

Wi-Fi Direct® is one of the specifications developed for P2P modecommunication. In Wi-Fi Direct, two or more wireless LAN terminals forcommunicating in the P2P mode each play either of a role called a GroupOwner (GO) or a role called a Client (CL). Note that a GO operates likean AP, and a CL operates like a station (STA) which connects to the AP.Note that whether the communication apparatus or the partner apparatusis to operate as a GO is decided by a sequence called a Group OwnerNegotiation. This eliminates the need for a conventional dedicateddevice as an access point, and direct communication between thecommunication apparatus and the partner apparatus is possible. Ingeneral, when a communication apparatus is to operate as an STA or a CL,the decision of a channel to be used is led by an AP which transmits asearch response command in response to a search request command from thecommunication apparatus. Additionally, when a communication apparatus isto operate as a GO, the communication apparatus decides the channel tobe used by comparing the channel information of the CL obtained by theGroup Owner Negotiation and channels that the communication apparatuscan use.

The above-described wireless communications by the infrastructure modeand the P2P mode can be simultaneously (concurrently) executed in asingle apparatus. For example, the communication apparatus can serve asan STA and perform wireless connection with an access point on one handbut can also function as a GO in the P2P mode to perform wirelessconnection with a partner apparatus functioning as a CL. In this case,the communication apparatus can perform wireless connection by usingconcurrent wireless interfaces via two distinct wireless channelsserving as the wireless interfaces. However, when communication isperformed by simultaneously allocating a plurality of channels using asingle wireless IC chip, the apparatus arrangement and processing becomecomplicated. Thus, in practice, a common channel may be used for theaforementioned two modes when performing concurrent communication.

Japanese Patent Laid-Open No. 2014-082685 discloses a communicationapparatus that connects to a first wireless network formed by a basestation and generates a second wireless network in which directcommunication with another communication apparatus is possible. Notethat in Japanese Patent Laid-Open No. 2014-082685, the communicationapparatus determines a channel to be used in the first wireless networkand generates the second wireless network by using the same channel.

In the technique of Japanese Patent Laid-Open No. 2014-082685, when itis immediately after the activation of the base station (access point)forming the first wireless network or when the power of the base stationis turned off, the connection of the first wireless network may requiretime until it is established or the connection may not be established.In such a case, the processing to generate the second wireless networkcan be prolonged or it may become impossible to generate the secondwireless network since a channel cannot be established.

SUMMARY OF THE INVENTION

The present invention reduces the influence of the connection processingof one mode on the connection processing of another mode in acommunication apparatus capable of communicating in a plurality ofmodes.

According to one aspect of the present invention, there is provided acommunication apparatus comprising: a communication unit configured toperform wireless communication by using one of a first mode ofperforming first communication with a partner apparatus via anotherapparatus, a second mode of performing second communication with thepartner apparatus without not via another apparatus, and a third mode ofconcurrently performing the first communication and the secondcommunication; and a control unit configured to control the firstcommunication and the second communication of the communication unit,wherein when an operation mode of the control unit is the third mode,the control unit controls the communication unit so as to activate afunction for the second communication after executing processing toestablish a connection for the first communication, and when theconnection has not been established even after a predetermined time haselapsed since the start of connection processing for the firstcommunication, the control unit controls the communication unit so as toactivate the function for the second communication even if theconnection for the first communication has not been established.

Further features of the present invention will become apparent from thefollowing description of exemplary embodiments (with reference to theattached drawings).

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate embodiments of the invention, andtogether with the description, serve to explain the principles of theinvention.

FIG. 1 is a view showing an example of the configuration of a wirelesscommunication system;

FIG. 2 is a view showing an example of the outer appearance of a mobilecommunication apparatus;

FIG. 3 is a view showing an example of the outer appearance of an MFP;

FIGS. 4A to 4C are views each showing an example of an operation displayunit of the MFP;

FIG. 5 is a block diagram showing the arrangement of the mobilecommunication apparatus;

FIG. 6 is a block diagram showing the arrangement of the MFP;

FIG. 7 is a sequence chart showing an example of the procedure of thewireless connection processing of a software AP mode;

FIG. 8 is a sequence chart showing an example of the procedure of thewireless connection processing of a WFD mode;

FIG. 9 is a sequence chart showing an example of the procedure of thewireless connection processing of an infrastructure mode; and

FIG. 10 is a flowchart showing the procedure of processing when awireless LAN is activated.

DESCRIPTION OF THE EMBODIMENTS

An exemplary embodiment(s) of the present invention will now bedescribed in detail with reference to the drawings. It should be notedthat the relative arrangement of the components, the numericalexpressions and numerical values set forth in these embodiments do notlimit the scope of the present invention unless it is specificallystated otherwise.

(System Configuration)

FIG. 1 shows an example of the configuration of a wireless communicationsystem according to this embodiment. The wireless communication systemincludes, for example, a mobile communication apparatus, a printingapparatus (MFP: Multi-Function Peripheral), and an access point (AP).These apparatuses are all communication apparatuses that includecommunication functions, respectively. However, the present invention isnot limited to this. An apparatus other than these apparatuses may beincluded in addition to or in place of these respective apparatusesshown in FIG. 1.

A mobile communication apparatus 200 is, for example, a portablecommunication apparatus which has a wireless LAN (WLAN) communicationfunction. Here, assume that data (packet) communication in a wirelessLAN system complying with e.g., the IEEE 802.11 standard series will beperformed by the wireless LAN communication function. The mobilecommunication apparatus 200 can use the wireless LAN communicationfunction to perform communication based on Wi-Fi Direct (WFD),communication by a software access point mode, or communication by aninfrastructure mode. Note that the software access point mode is alsocalled a software AP mode, and the infrastructure mode is also called an“infra” mode.

Note that the mobile communication apparatus 200 may have a wirelesscommunication function other than for a wireless LAN complying with theIEEE 802.11 standard series. For example, the mobile communicationapparatus 200 may have a wireless LAN function that complies with astandard other than the IEEE 802.11 standard series or have acommunication function other than for a wireless LAN. However, it isassumed that the mobile communication apparatus 200 can operate in oneof a first mode of performing wireless communication with a partnerapparatus via another apparatus and a second mode of performing wirelesscommunication with a partner apparatus not via another apparatus. It isalso assumed that the mobile communication apparatus 200 cansimultaneously perform wireless communications by the first mode and thesecond mode. The mobile communication apparatus 200 can be, for example,a personal information terminal such as a PDA (Personal DigitalAssistant), a mobile phone, or a digital camera.

The print apparatus (MFP 300) can have a communication function thatperforms wireless communication with the mobile communication apparatus200. The print apparatus can also have other functions such as ascanning function (scanner), a FAX function, and a telephone function.Here, the wireless communication function is a function corresponding tothe communication function of the aforementioned mobile communicationapparatus 200. That is, assume that, for example, in a case in which themobile communication apparatus 200 has a wireless LAN communicationfunction, the MFP 300 has a wireless LAN communication function thatcomplies with the same standard. In this embodiment, the MFP 300 has ascanning function in addition to the print function, but the presentinvention is not limited to this. The MFP 300 may have only the printfunction or have a function unrelated to image processing such asprinting.

Note that the MFP 300 can also operate, in the same manner as the mobilecommunication apparatus 200, in one of a first mode of performingwireless communication with a partner apparatus via another apparatusand a second mode of performing wireless communication with a partnerapparatus not via another apparatus. Assume also that the MFP 300 cansimultaneously perform wireless communication by the first mode and thesecond mode.

An access point 400 has a wireless LAN communication function and relayscommunication between communication apparatuses functioning as wirelessLAN stations (may also be referred to as clients hereinafter) that havebeen permitted, by the access point, to connect to the access pointitself. In addition, the access point 400 can also relay communicationbetween an aforementioned communication apparatus and an apparatus (forexample, an apparatus directly connected to a network by a LAN cable orthe like) connectable via the network to which the access point 400 isconnected. A communication apparatus (station) which is present aroundthe access point 400 can perform communication by the infrastructuremode via the access point 400. Note that if the mobile communicationapparatus 200 is to communicate with a partner apparatus via anotherapparatus using a communication function which is not the wireless LAN,the access point 400 can be replaced with the other apparatus.

The mobile communication apparatus 200 and the MFP 300 can use theirrespective wireless LAN communication functions to perform wirelesscommunication by the infrastructure mode via the access point 400. Themobile communication apparatus 200 and the MFP 300 can also performwireless communication in a peer-to-peer mode (P2P mode) in accordancewith Wi-Fi Direct or the like. Note that, the mobile communicationterminal apparatus 200 and the MFP 300 can execute processingcorresponding to a plurality of print services via a wireless LAN, aswill be described later.

(Apparatus Arrangement)

FIG. 2 shows an example of the outer appearance of the mobilecommunication apparatus 200. This embodiment will describe a case inwhich the mobile communication apparatus 200 is a smartphone. Thesmartphone is a multi-function mobile phone which incorporates aplurality of functions such as a camera, a web browser, and an emailfunction. However, the mobile communication apparatus 200 need not be asmartphone. That is, the mobile communication apparatus 200 according tothis embodiment can be replaced by an arbitrary communication apparatusincorporating at least some of the functions to be described below.

The mobile communication apparatus 200 includes, for example, a touchpanel integrating a display unit 202 and an operation unit 203 and caninclude a bezel 201 portion that fixes or protects the touch panel. Notethat an antenna for performing communication by the wireless LAN can beprovided on the back side of the bezel 201, and the mobile communicationapparatus 200 can perform communication using this antenna and awireless communication circuit. The display unit 202 and the operationunit 203 can be, for example, a touch panel display having an LCDdisplay mechanism. For example, the display unit 202 displays buttonicons and a software keyboard, and the operation unit 203 can detect anoperation event when a user touches the icons and the keyboard. A powerkey 204 is a hard key used to accept an operation to turn on/off thepower.

FIG. 3 shows an example of the outer appearance of the MFP 300. In FIG.3, a document table 301 is a glass-like transparent table on which adocument to be scanned by a scanner (scanning unit) is placed. Adocument cover 302 is a cover used to press a document when the scannerscans the document and to prevent external leakage of light from a lightsource, with which the document is irradiated at the time of scanning. Aprinting paper insertion port 303 is an insertion port to supply papersheets of various sizes used for printing into the MFP 300. Paper sheetsset on the printing paper insertion port 303 are conveyed one by one toa printing unit and are discharged from a printing paper discharge port304 after printing is performed by the printing unit. An operationdisplay unit 305 is formed by including keys such as character inputkeys, a cursor key, a decision key, and a cancel key, an LED (LightEmitting Diode), and an LCD (Liquid Crystal Display). The user canperform various settings and activate the various functions of the MFPvia the operation display unit 305. The operation display unit 305 maybe formed by a touch panel. A housing 306 houses a circuit, a printmechanism, and the like forming the MFP 300. An antenna forcommunicating by the wireless LAN and a wireless communication circuitare also housed in the housing.

FIGS. 4A to 4C each schematically show an example of a screen which isdisplayed on the operation display unit 305 of the MFP. FIG. 4A is ahome screen that shows a state (idle state) in which the MFP is turnedon but no operation such as printing or scanning is performed. Byaccepting a key operation or a touch panel operation made by the user inthis state, the MFP can shift to executing processes related todisplaying a menu, various settings, or functions for copying, scanning,or a cloud function using Internet communication. The operation displayunit 305 can seamlessly display, from the home screen of FIG. 4A, afunction different from that of FIG. 4A by accepting the key operationor the touch panel operation made by the user. FIG. 4B is such anexample and shows an example of a screen in which it is possible toexecute a print or a photo function or change the LAN settings. FIG. 4Cis an example of a screen which is displayed when the operation displayunit 305 accepts a LAN setting selection in the screen of FIG. 4B.Changes to various kinds of LAN settings such as the setting toenable/disable the infrastructure mode (wireless LAN) or the setting toenable/disable the WFD mode (wireless direct) can be executed from thisscreen.

FIG. 5 shows an example of the arrangement of the mobile communicationapparatus 200. The mobile communication apparatus 200 includes, in oneexample, a main board 501 for performing main control of the apparatusitself and a WLAN unit 517 for performing communication by the wirelessLAN.

In the main board 501, a CPU (Central Processing Unit) 502 is a systemcontrol unit, and controls the overall operation of the mobilecommunication apparatus 200. The following processing by the mobilecommunication apparatus 200 is executed under the control of, forexample, the CPU 502. Note that the mobile communication apparatus 200can use an application-specific integrated circuit (ASIC), a fieldprogrammable gate array (FPGA), or the like to implement at least someof the functions.

A ROM 503 stores control programs to be executed by the CPU 502, anembedded operating system (OS) program, and the like. In thisembodiment, the respective control programs stored in the ROM 503perform software control such as scheduling and task switching under themanagement of the embedded OS stored in the ROM 503. A RAM 504 isimplemented by an SRAM (Static RAM) or the like, stores data such asprogram control variables, and stores data such as setting valuesregistered by the user and management data of the mobile communicationapparatus 200. The RAM 504 is provided with various work buffer areas.An image memory 505 is implemented by a memory such as a DRAM (DynamicRAM) and temporarily stores image data received via the WLAN unit 517and image data read out from a data storage unit 513 that are to beprocessed by the CPU 502. A nonvolatile memory 512 is formed from amemory such as a flash memory and continues to store data even when thepower of the mobile communication apparatus 200 is turned off. Note thatsuch memory structures are not limited to the above-describedstructures. For example, the image memory 505 and the RAM 504 may have ashared memory structure, or the data may be backed up in the datastorage unit 513. Although the image memory 505 has been described asbeing implemented by a DRAM, it may be implemented by another storagemedium such as a hard disk or a nonvolatile memory.

A data conversion unit 506 executes an analysis of data of variousformats and data conversion such as color conversion and imageconversion. A telephone unit 507 processes speech data input/output viaa loudspeaker unit 514 to generate and transmit a speech communicationsignal to a communication circuit or reconstruct the speech data from asignal received from the communication circuit. An operation unit 508generates and outputs a signal representing an operation which has beenaccepted via the operation unit 203 of FIG. 2. A GPS (Global PositioningSystem) 509 obtains position information such as the current latitudeand longitude of the mobile communication apparatus 200. A display unit510 electronically controls the display contents of the display unit 202in FIG. 2, displays a screen for various input operations, and displaysthe operation states, status states, and the like of the MFP 300.

A camera unit 511 has a function of electronically recording andencoding an image input via a lens. Image data related to an imagecaptured by the camera unit 511 is saved in the data storage unit 513.The data storage unit 513 can be a storage device in which various kindsof data are stored as described above. The loudspeaker unit 514implements the function of inputting or outputting speech for atelephone function and also other functions such as alarm notificationand the like. A power supply unit 515 is a battery of a size that can bestored in the mobile communication apparatus 200 and performs powersupply control to the apparatus. The mobile communication apparatus 200can be in one of power supply states including a battery dead state inwhich the battery has no remaining amount, a power-off state in whichthe power key 204 is not pressed, an active state in which the apparatusis normally active, and a power saving state in which the apparatus isactive but is set in a power saving mode.

The WLAN unit 517 is formed by including an antenna and a communicationcircuit (for example, a circuit having a baseband processing functionand an RF processing function) to perform wireless communicationcomplying with the wireless LAN standard. The mobile communicationapparatus 200 performs, via the WLAN unit 517, data communication usingthe wireless LAN with another device such as an MFP serving as thepartner apparatus. The WLAN unit 517 can convert data into packets andperform wireless packet transmission to another device. The WLAN unitcan also receive packets wirelessly transmitted from the other externaldevice, reconstruct the original data, and transmit the reconstructeddata to the CPU 502.

The respective components of the main board 501 are connected to eachother via a system bus 518 managed by the CPU 502. The WLAN unit 517 isconnected to the system bus 518 of the main board 501 via a bus cable516. Therefore, under the control of the CPU 502, data generated orstored by the respective components of the main board 501 aretransmitted via the WLAN unit 517, and data received by the WLAN unit517 are transferred to the respective components of the main board 501.

Note that the mobile communication apparatus 200 can have functions of ageneral smartphone such as a communication function for cellularcommunication.

FIG. 6 shows an example of the arrangement of the MFP 300. The MFP 300includes, in one example, a main board 601 for performing main controlof the apparatus itself and a WLAN unit 616 for performing communicationby a wireless LAN, and a modem 619 for wired communication.

In the main board 601, a CPU (Central Processing Unit) 602 is a systemcontrol unit, and controls the overall operation of the MFP 300. Thefollowing processing by the MFP 300 is executed, for example, under thecontrol of the CPU 602. Note that the MFP 300 can use anapplication-specific integrated circuit (ASIC), a field programmablegate array (FPGA), or the like to implement at least some of thefunctions.

A ROM 603 stores control programs to be executed by the CPU 602, anembedded operating system (OS) program, and the like. In thisembodiment, the respective control programs stored in the ROM 603perform software control such as scheduling and task switching under themanagement of the embedded OS stored in the ROM 603. A RAM 604 isimplemented by an SRAM (Static RAM) or the like, stores data such asprogram control variables, and stores data such as setting valuesregistered by the user and management data of the MFP 300. The RAM 604is provided with various work buffer areas. A nonvolatile memory 605 isformed from a memory such as a flash memory and continues to store dataeven when the power of the MFP 300 is turned off. An image memory 606 isimplemented by a DRAM (Dynamic RAM) or the like and stores image datareceived via the WLAN unit 616 and image data processed by anencoding/decoding processing unit 611. Also, similarly to the memorystructure of the mobile communication apparatus 200, the memorystructure of the MFP 300 is not limited to the above-describedstructure.

A scan control unit 607 controls a scanning unit 609 (for example, a CISimage sensor (contact type image sensor)) to optically scan a documentplaced on the document table 301 of FIG. 3, and an image signalgenerated by converting the scanned document into electrical image datais output. At this time, the scan control unit 607 may perform variouskinds of image processing such as binarization processing and halftoneprocessing on the image data and output the resultant image data. A dataconversion unit 608 executes an analysis of data of various formats,conversion from image data into print data, and the like. A FAX controlunit 617 transmits, for example, image data scanned by the scanning unit609, receives FAX data received from an external apparatus, and performscontrol to reconstruct an image from the received data. The FAX controlunit 617 can, for example, transmit/receive FAX data to/from theexternal apparatus via the modem 619.

An operation display unit 610 generates a signal representing a useroperation accepted via the operation display unit 305 of FIG. 3 andcontrols the information to be displayed on the operation display unit305. The operation display unit 610 displays, for example, the screen ofFIG. 4A in the initial state, displays a screen as that of FIG. 4B inresponse to accepting predetermined processing by the user, or cantransmit a signal instructing the execution of the predeterminedprocessing to each processing unit in the main board. Theencoding/decoding processing unit 611 executes encoding processing anddecoding processing and enlargement/reduction processing of image data(JPEG, PNG, or the like) handled by the MFP 300.

A paper feed unit 613 holds paper sheets and supplies paper sheets forprinting under the control of a print control unit 614. As the paperfeed unit 613, a plurality of paper feed units can be prepared so as tohold a plurality of types of paper sheets in one apparatus. In thiscase, the print control unit 614 can perform control to select a paperfeed unit to be used to supply paper sheets. The print control unit 614performs various kinds of image processing such as smoothing processing,print density correction processing, and color correction to the printtarget image data and outputs the processed image data to a printingunit 612. The printing unit 612 can be a circuit and a mechanismfunctioning as an inkjet printer which prints an image by discharging,from a printhead, ink supplied from an ink tank. The print control unit614 can also periodically read out the information of the printing unit612 and perform control to update the information stored in the RAM 604.For example, the print control unit 614 can update status information,such as the remaining amount in an ink tank and the state of theprinthead, which are stored in the RAM 604.

A NW (network) subsystem 620 is a subsystem in charge of controlling theinput/output related to network communication in order to reduce thecontrol load of the CPU (Central Processing Unit) 602. A control code tobe executed by a NW sub-CPU 621 is stored in a part of the RAM 604, andthis control code is DMA-transferred from the RAM 604 to a RAM 622 inthe subsystem 620 in a boot sequence of the CPU 602. The control code isexecuted by the NW sub-CPU 621 after the NW sub-CPU 621 is reset. Asresult, input/output control related to network communication isexecuted. The respective modules (the NW sub-CPU 621, the RAM 622, and aUHOST module 623) in the NW subsystem are connected to each other via alocal bus 624 separate from a system bus 625 of the main board 601. TheNW subsystem 620 is capable of performing network control that hasminimal influence on other modules in the main board 601 by taking on,among the functions related to network communications, particularlyfunctions of a layer near the hardware layer.

A timer unit 626 is a timer that can measure the time that has elapsedsince a predetermined timing. For example, as will be described later,the timer unit 626 measures, from the start of the connection processingof the infrastructure mode, the time that has elapsed without success ofthe connection processing and can notify the CPU 602 of the elapse of apredetermined time when, for example, the predetermined time haselapsed.

The WLAN unit 616 is the same as the WLAN unit 517 of the mobilecommunication apparatus 200. Hence, a detailed description will beomitted. The WLAN unit 616 is connected, for example, to the NWsubsystem 620 via, for example, the UHOST module 623 and a bus cable615. The modem 619 is, for example, a functional unit to perform wiredcommunication and is formed by including a circuit and a mechanism forperforming data (packet) communication complying with, for example, theIEEE 802.3 standard series. The modem 619 includes, for example, anEthernet® interface and is connected to a LAN by a cable connected tothis interface. This allows communication with an external device suchas a PC that has been similarly connected to the LAN. In addition, themodem 619 can communicate with, via the wired LAN, a communicationapparatus that is connected to the access point which is connected tothe wired LAN. The modem 619 can be connected to the system bus 625 ofthe main board 601 via a bus cable 618 but may be connected to, forexample, the local bus 624 of the NW subsystem 620. Note that therespective components of the main board 601 are connected to each othervia the system bus 625 managed by the CPU 602.

(Wireless Connection Method)

In this embodiment, the P2P mode in which a communication apparatusdirectly communicates with a partner apparatus not via another apparatusand the infrastructure mode in which the communication apparatusindirectly communicates with the partner apparatus via another apparatussuch as an access point can be used as the connection methods of thewireless LAN.

The P2P mode can have a plurality of modes. In these modes, for example,the communication apparatus uses a common search request command (forexample, a Probe Request frame) between the modes to search for anddiscover the communication partner apparatus. It is possible to transmita search request command added with various kinds of attributeinformation. Normally, if attributes are designated in a search requestcommand, it is recommended that the apparatus which received the searchrequest command transmits a response related to interpretable attributesas widely as possible within the range defined by the specifications ofthe mode and specifications based on which the mode is defined (Wi-Fifor WFD). Also, in a case in which a piece of uninterpretableinformation is included in the information (including the aforementionedattributes) added to the search request command, the apparatus whichreceived the search request command can respond based on onlyinformation that can be interpreted.

The plurality of modes included in the aforementioned P2P mode caninclude further modes called a mode A (software AP mode) and a mode B(Wi-Fi Direct mode). For the respective modes, compatible devices may bedifferent, and usable applications may also be different.

FIG. 7 shows an example of the procedure of the wireless connectionprocessing of the mode A (software AP mode). In the software AP mode,one apparatus, out of a communication apparatus and a partner apparatus,functions as a software AP by implementing an access point function bysoftware, and the other apparatus operates as a client that connects tothe software AP. Assume that the mobile communication apparatus 200serves as the client having the role to request various services andthat the MFP 300 will serve as the software AP, hereinafter.

In the software AP mode, the client searches for a device which willserve as a software AP by using a search request command 701, and thesoftware AP responds by transmitting a search response 702 to the searchrequest command 701. When the software AP is discovered by the client,the remaining wireless connection processing (establishment of awireless connection and the like) is performed between the client andthe software AP, and then IP connection processing (allocation of IPaddresses and the like) is executed. Note that as commands andparameters transmitted/received to establish a wireless connectionbetween the client and the software AP, those which are defined by, forexample, the Wi-Fi standard or IEEE 802.11 standard are used, and adescription thereof will be omitted.

FIG. 8 shows an example of the procedure of the wireless connectionprocessing of the mode B (Wi-Fi Direct (WFD) mode). Note that a devicethat can communicate by the WFD mode will invoke a dedicated applicationto implement this communication function in response to accepting, forexample, a user operation via the operation unit of the device.Subsequently, a negotiation to perform WFD communication can be executedbased on a user operation of an operation screen serving as a UI (userinterface) provided by the application. In the WFD mode, after thecommunication apparatus searches for a partner apparatus by the searchrequest command, the roles of a P2P Group Owner (GO) and a P2P Client(CL) are decided between the communication apparatus and the partnerapparatus, and the remaining connection processing is performed. Thisrole decision can be performed by, for example, a GO Negotiation in theWFD standard.

For example, the communication apparatus transmits a search requestcommand 801 and searches for a partner apparatus to connect by the WFDmode. The partner apparatus responds by transmitting a search response802 to the received search request command 801. When the partnerapparatus is discovered by the communication apparatus, thecommunication apparatus and the partner apparatus confirm informationabout services and functions which can be provided to each other (deviceinformation confirmation). The services and functions are, for example,a print service, an image display service, a file transmission service,a video streaming service, a video display service, and the like. Notethat the device information confirmation is not essential but optional.This device information confirmation phase is performed by, for example,a Service Discovery of the WFD standard. By confirming the deviceinformation of each other, the communication apparatus and the partnerapparatus can know, before performing the WFD connection, what kind ofservice can be provided by the other apparatus which is connectable bythe WFD mode. When the partner apparatus is discovered by thecommunication apparatus, an apparatus which is to operate as the P2PGroup Owner (GO) and that which is to operate as the P2P Client (CL) aredecided. This role decision can be performed by, for example, the GONegotiation in the WFD standard. In the GO Negotiation, thecommunication apparatus and the partner apparatus transmit to each otherthe respective Intent values, which are values set in the respectiveapparatuses, to compare the magnitudes of the Intent values. Next, as aresult of the comparison, the communication apparatus and the partnerapparatus decide that the apparatus which has the larger value willoperate as the GO and the apparatus which has the smaller value willoperate as the CL. If the respective Intent values have the same values,the communication apparatus and the partner apparatus will comparerandom values (0 or 1) generated after the initial comparison and decidethe roles of the GO and the CL. After the roles of the GO and the CL aredecided, the communication apparatus and the partner apparatus shift toa parameter exchange phase and exchange parameters to perform WFDcommunication. Subsequently, the communication apparatus and the partnerapparatus perform the remaining wireless connection processing and theIP connection processing based on the exchanged parameters. Note that inthe parameter exchange phase, parameters (for example, information usedfor encrypted communication) concerning the security of the wireless LANare automatically exchanged by using, for example, a Wi-Fi ProtectedSetup. As the parameters, for example, an SSID as identificationinformation of a wireless network, an encryption key, an encryptionscheme, an authentication key, an authentication scheme, and the likeare included.

The infrastructure mode will be described next. FIG. 9 is a sequencechart showing an example of the procedure of the wireless connectionprocessing of the infrastructure mode. In the infrastructure mode, thecommunication apparatus creates a network, connects to an access point(AP) controlling the network, and communicates with the partnerapparatus via the AP. For example, the mobile communication apparatus200 and the MFP 300 connect to the access point 400 and communicate witheach other via the access point 400.

In the infrastructure mode, each communication apparatus searches for anAP by a search request command 901 (search request command 903). The APresponds by transmitting a search response 902 (search response 904) tothe received search request command. Next, when the AP is discovered bythe communication apparatus, the remaining wireless connectionprocessing (establishment of a wireless connection and the like) and IPconnection processing (allocation of IP addresses and the like) areperformed between the communication apparatus and the AP. Note thatsince it is sufficient to use commands and parameters defined by theWi-Fi standard or IEEE 802.11 standard as the commands and theparameters transmitted/received to establish a wireless connectionbetween the communication apparatus and the AP, and a descriptionthereof will be omitted.

(Channel Decision Processing of Infrastructure Mode and P2P Mode)

When performing wireless communication by concurrently performing theinfrastructure mode and the P2P mode, the communication apparatus uses achannel provided from the AP in the infrastructure mode as the commonchannel for both modes. Hence, wireless communication using both modescan be stably maintained in the communication apparatus. A mode that canconcurrently (simultaneously) execute a plurality of communication modesin this manner is called a simultaneous operation mode. The wirelessconnection of the infrastructure mode is performed using a specificfrequency band (wireless channel).

In the infrastructure mode, a station (STA) confirms whether it ispossible to wirelessly connect to the AP in a channel usable by thestation. Next, the STA specifies the channel which received a responsefrom the AP and decides to use the channel as the subsequent usechannel. That is, the AP transmits a response command to the STA onlywhen a request command from the STA arrives in a channel that the AP canuse.

In a wireless communication system formed by the AP and the STA, anapparatus which operates as the AP transmits a Beacon signal, and anapparatus which operates as the STA transmits a search request commandto the AP upon receiving this beacon signal. The search request commandis, for example, a Probe Request frame. The AP does not transmit aresponse command to a search request command transmitted on a channelother than channels that can be used by the AP itself. Here, theresponse command is, for example, a Probe Response Frame.

For example, if the channel that can be used by the access point 400 isthe nth channel, the access point 400 does not transmit a searchresponse command to the search request command transmitted using the 1stchannel. If the MFP 300 determines that no response has been receivedfrom the access point 400 due to a timeout or the like aftertransmitting the search request command using the 1st channel, a searchrequest command is subsequently transmitted using the 2nd channel. TheMFP 300 repeats the above-described trial by increasing the channelnumbers. When the MFP 300 transmits a search request command using thenth channel, the access point 400 transmits a search response command ifthe channel is in an unused state.

In the infrastructure mode, the nth channel in which a search responsecommand is returned from the access point in this above-described manneris used in the subsequent wireless communication operation.

The wireless connection of the P2P mode is performed using a specificfrequency band (wireless channel). At this time, to stably maintain thewireless communication by the infrastructure mode and the P2P mode, thechannel in which a response was received from the AP in theinfrastructure mode is obtained and set as the common channel for the GOof the P2P mode.

A channel defined by the Wi-Fi standard is used in each of theinfrastructure mode and the P2P mode. In the Wi-Fi standard, 1 to 13channels can be used as channels of a 2.4 GHz frequency band dependingon the country or region. In this embodiment, a description will begiven assuming that the range of usable channels is 1 to 13 channels.However, the present invention is not limited to this. That is, althoughthe number of channels may increase in a different frequency band or thechannels may be limited to 1 to 11 channels even in the same frequencyband depending on the frequency band regulations according to eachcountry or region, the method according to this embodiment is usable inan actually usable channel range. For example, in the IEEE 802.11awireless LAN standard, a frequency band of 5 GHz is used. Hence, it isknown that a range of about 36 to 140 channels can be used. Note thatfor a communication apparatus using both frequency bands 2.4 GHz (1 to13) and 5 GHz (36 to 140), this means that the number of channels totransmit a search request command to the AP will increase.

(Processing Procedure)

An example of the procedure of the processing to be executed in thisembodiment will be described next. FIG. 10 shows an example of theprocedure of the processing when the wireless LAN is activated in theMFP 300. Note that although the procedure of the processing of the MFP300 will be described in this embodiment, the same processing may beexecuted by the mobile communication apparatus 200. Note that each stepof FIG. 10 is implemented when, for example, the CPU 602 of the MFP 300loads a control program stored in a memory such as the ROM 603 to theRAM 604, and executes the program. Additionally, the flowchart of FIG.10 starts when, for example, a trigger such as a wireless LAN connectionstart instruction by the operation unit or a power on is generated inthe MFP 300.

In this processing, the MFP 300 first determines whether thesimultaneous operation mode has been enabled (step S1001). If thesimultaneous operation mode has not been enabled (NO in step S1001), theMFP 300 executes the connection processing of the infrastructure mode(step S1009). In response to the connection processing in theinfrastructure mode succeeding (YES in step S1010), the MFP 300 ends theprocessing according to the flowchart of FIG. 10. In this case, whilethe connection processing in the infrastructure mode does not succeed(NO in step S1010), the MFP 300 repetitively executes the connectionprocessing (step S1009). Note that it may be configured so that the MFP300 executes the connection processing only in the P2P mode. That is,the MFP 300 may select, in step S1001, whether the operation mode is tobe the simultaneous operation mode, the infrastructure mode, or the P2Pmode, and may perform a different process for each mode in accordancewith the determination result. For example, if the operation mode is thesimultaneous operation mode, the MFP 300 advances the process to stepS1002. If the operation mode is the infrastructure mode, the processadvances to step S1009. If it is the P2P mode, the process can advanceto P2P mode activation (connection) processing (not shown).

On the other hand, if the simultaneous operation mode has been enabled(YES in step S1001), the MFP 300 sets a connection timeout time (forexample, 30 sec) of the infrastructure mode and stores the set time inthe RAM 604 in the MFP 300 (step S1002). Note that the connectiontimeout time in this case can be set shorter than that used for theconnection processing in the infrastructure mode when the MFP 300 is setto perform communication using only the infrastructure mode. Forexample, in a case in which the timeout time is 1 min when the MFP 300is set to perform communication using only the infrastructure mode, thetimeout time can be set to 30 sec if the simultaneous operation mode isenabled. Additionally, if the timeout time is not set (is nominallyinfinite) when the MFP 300 is set to perform communication using onlythe infrastructure mode, a finite timeout time can be explicitly setwhen the simultaneous operation mode is enabled. FIG. 10 illustrates acase in which the timeout time is not set (is nominally infinite) whenit is set so as to perform communication by only the infrastructuremode. That is, the example shows how processes are repeated until stepS1009 succeeds without determination of a timeout when “NO” isdetermined in step S1010. However, it may be set so that the processingends by an error if the connection processing in the infrastructure modedoes not succeed within a predetermined time set as the timeout timewhen “NO” is determined in step S1010 and a timeout has been determined.In this case, the timeout time can be set longer than the timeout timeset in step S1002.

The MFP 300 executes the connection processing of the infrastructuremode (step S1003) and monitors whether the processing has succeeded(step S1004). Note that the MFP 300 sets the initial value to 0 sec andstarts a time measurement by using the timer unit 626 upon starting theconnection processing of the infrastructure mode.

If the elapsed time without succeeding in the connection since the startof the connection processing reaches the connection timeout time storedin the RAM 604 (NO in step S1004 and YES in step S1005), the MFP 300generates a timeout event through the timer unit 626 and stops the timemeasurement. In this case, the MFP 300 executes the activationprocessing of the P2P mode (step S1007).

On the other hand, if the connection processing by the infrastructuremode succeeds (YES in step S1004), the MFP 300 stops the timemeasurement by the timer unit 626. Next, the MFP 300 determines whetherthe P2P mode has been activated (step S1006). If the P2P mode has notbeen activated (NO in step S1006), the MFP 300 executes the activationprocessing of the P2P mode (step S1007).

After the activation processing of the P2P mode (step S1007), the MFP300 shifts the process to step S1008. In addition, if it is determinedthat the P2P mode has been activated in step S1006 (YES in step S1006),the MFP 300 shifts the process to step S1008.

In step S1008, the MFP 300 determines whether a connection has beenestablished by the infrastructure mode (step S1008). Since when it isdetermined that a timeout has occurred in step S1005, a connection bythe infrastructure mode has not been established (NO in step S1008), theMFP 300 returns the process to step S1003 and re-executes the connectionprocessing of the infrastructure mode. On the other hand, if it isdetermined that a connection has been established by the infrastructuremode (YES in step S1008), the MFP 300 ends the activation processing ofthe wireless LAN.

Note that the MFP 300 can change the setting of the P2P mode if it isdetermined that the P2P mode has been activated in step S1006 and if itis determined that a connection by the infrastructure mode has beenestablished in step S1008. For example, the settings of the P2P mode canbe changed so that the wireless channel which is to be used in the P2Pmode will match the wireless channel which is to be used in theinfrastructure mode. Note that since the determination in step S1006 isperformed if the connection processing in the infrastructure mode hassucceeded, changes to the settings of the P2P mode as described abovemay be performed when the P2P mode is determined to be activated in thedetermination in step S1006.

As described above, according to the processing of FIG. 10, if thesimultaneous operation mode has been enabled, a timeout time for theconnection processing of the infrastructure mode can be set so that theP2P mode is activated when the timeout time has elapsed without asuccessful connection. This can prevent the P2P mode from not beingactivated at all due to the incompletion of the connection processing ofthe infrastructure mode. Also, a timeout time can be set when theinfrastructure mode is operating in a single operation mode. However, inthis case, the activation of the P2P mode can be quickened by shorteningthe timeout time of the connection processing of the infrastructure modein the case of the simultaneous operation mode. This allows the P2P modeto be activated even if a connection by the infrastructure mode cannotbe established or requires time to be established when the power of theaccess point is turned off or when it is immediately after theactivation of the access point.

Note that the timeout time when the infrastructure mode is operating ina single operation mode can be set shorter than the timeout time of theconnection processing of the infrastructure mode in the case of thesimultaneous operation mode. This can increase the probability that theconnection by the infrastructure mode will be in an established stateuntil the point when the P2P mode is activated.

Note that, as described above, the processing described in thisembodiment can be executed by the mobile communication apparatus 200.That is, if it is a communication apparatus that can performsimultaneous communication by the infrastructure mode and the P2P mode,the above-described processing can be executed. In addition, althoughthe infrastructure mode and the P2P mode were described as the examplesin the above-described embodiment, the present invention is not limitedto them. That is, the above-described processing is applicable to acommunication apparatus capable of simultaneous communication in aplurality of communication modes.

According to the present invention, the influence of the connectionprocessing of one communication mode on the connection processing ofanother communication mode in a communication apparatus capable ofcommunicating in a plurality of modes can be reduced.

Other Embodiments

Embodiment(s) of the present invention can also be realized by acomputer of a system or apparatus that reads out and executes computerexecutable instructions (e.g., one or more programs) recorded on astorage medium (which may also be referred to more fully as a‘non-transitory computer-readable storage medium’) to perform thefunctions of one or more of the above-described embodiment(s) and/orthat includes one or more circuits (e.g., application specificintegrated circuit (ASIC)) for performing the functions of one or moreof the above-described embodiment(s), and by a method performed by thecomputer of the system or apparatus by, for example, reading out andexecuting the computer executable instructions from the storage mediumto perform the functions of one or more of the above-describedembodiment(s) and/or controlling the one or more circuits to perform thefunctions of one or more of the above-described embodiment(s). Thecomputer may comprise one or more processors (e.g., central processingunit (CPU), micro processing unit (MPU)) and may include a network ofseparate computers or separate processors to read out and execute thecomputer executable instructions. The computer executable instructionsmay be provided to the computer, for example, from a network or thestorage medium. The storage medium may include, for example, one or moreof a hard disk, a random-access memory (RAM), a read only memory (ROM),a storage of distributed computing systems, an optical disk (such as acompact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™),a flash memory device, a memory card, and the like.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

This application claims the benefit of Japanese Patent Application No.2016-101939, filed May 20, 2016 which is hereby incorporated byreference herein in its entirety.

What is claimed is:
 1. A communication apparatus comprising: acommunication unit configured to perform wireless communication by usingone of a first mode of performing first communication with a partnerapparatus via another apparatus, a second mode of performing secondcommunication with the partner apparatus not via another apparatus, anda third mode of concurrently performing the first communication and thesecond communication; and a control unit configured to control the firstcommunication and the second communication of the communication unit,wherein in a case where an operation mode of the control unit is thethird mode, the control unit controls the communication unit so as toactivate a function for the second communication after executingprocessing to establish a connection for the first communication bycommunicating association request, and in a case where the connectionhas not been established even after a predetermined first time haselapsed since the start of connection processing for the firstcommunication, the control unit controls the communication unit so as toactivate the function for the second communication even in a case wherethe connection for the first communication has not been established, andwherein in a case where an operation mode of the control unit is thefirst mode and in a case where the connection has not been establishedeven after a predetermined second time that is longer than thepredetermined first time has elapsed since the start of connectionprocessing for the first communication, the control unit controls thecommunication unit so as to generate a timeout event even in a casewhere the connection for the first communication has not beenestablished; wherein in a case where the connection for the firstcommunication has been established after the function for the secondcommunication is activated, the control unit controls the communicationunit to change a wireless channel used in the second communication so asto match a wireless channel used in the first communication.
 2. Theapparatus according to claim 1, wherein in a case where the connectionfor the first communication has not been established after the functionfor the second communication is activated, the control unit furthercontrols the communication unit so as to execute again the connectionprocessing for the first communication.
 3. The apparatus according toclaim 1, wherein the wireless communication is wireless communication bya wireless LAN complying with IEEE 802.11 standard series.
 4. Theapparatus according to claim 3, wherein the first mode is aninfrastructure mode of the wireless LAN, and the second mode is apeer-to-peer mode of the wireless LAN.
 5. The apparatus according toclaim 4, wherein the peer-to-peer mode includes at least one of a Wi-FiDirect mode and a software access point mode.
 6. The apparatus accordingto claim 1, further comprising at least one of a print unit capable ofprinting, a scan unit capable of scanning a document, a FAX unit capableof transmitting data by FAX, and a telephone unit that can be used in acase where speech communication is performed.
 7. The apparatus accordingto claim 1, wherein the communication apparatus is a mobilecommunication apparatus.
 8. A control method of a communicationapparatus including a communication unit configured to perform wirelesscommunication by using at least one of a first mode of performing firstcommunication with a partner apparatus via another apparatus, a secondmode of performing second communication with the partner apparatus notvia another apparatus, and a third mode of concurrently performing thefirst communication and the second communication, the communication unitbeing controlled so as to activate a function for the secondcommunication after executing processing to establish a connection forthe first communication by communicating association request in a casewhere an operation mode of the communication unit is the third mode,comprising: controlling the communication unit, in a case where theconnection has not been established even after a predetermined firsttime has elapsed since the start of connection processing for the firstcommunication, so as to activate the function for the secondcommunication even in a case where the connection for the firstcommunication has not been established, and controlling thecommunication unit, in a case where an operation mode of thecommunication unit is the first mode, and in a case where the connectionhas not been established even after a predetermined second time that islonger than the predetermined first time has elapsed since the start ofconnection processing for the first communication, so as to generate atimeout event even in a case where the connection for the firstcommunication has not been established; wherein in a case where theconnection for the first communication has been established after thefunction for the second communication is activated, the method includescontrolling the communication unit to change a wireless channel used inthe second communication so as to match a wireless channel used in thefirst communication.
 9. A non-transitory computer-readable storagemedium that stores a computer program for causing a computer of acommunication apparatus including a communication unit configured toperform wireless communication by using at least one of a first mode ofperforming first communication with a partner apparatus via anotherapparatus, a second mode of performing second communication with thepartner apparatus not via another apparatus, and a third mode ofconcurrently performing the first communication and the secondcommunication, the communication unit being controlled so as to activatea function for the second communication after executing processing toestablish a connection for the first communication by communicatingassociation request in a case where an operation mode of thecommunication unit is the third mode, to control the communication unit,in a case where the connection has not been established even after apredetermined first time has elapsed since the start of connectionprocessing for the first communication, so as to activate the functionfor the second communication even in a case where the connection for thefirst communication has not been established, and control thecommunication unit, in a case where an operation mode of thecommunication unit is the first mode, and in a case where the connectionhas not been established even after a predetermined second time that islonger than the predetermined first time has elapsed since the start ofconnection processing for the first communication, so as to generate atimeout event even in a case where the connection for the firstcommunication has not been established; wherein in a case where theconnection for the first communication has been established after thefunction for the second communication is activated, the computercontrols the communication unit to change a wireless channel used in thesecond communication so as to match a wireless channel used in the firstcommunication.